System and method for enabling focused navigation using filtering and direct-tune buttons

ABSTRACT

A button on a remote control device is associated with a filter for filtering a first stored sequence of cards representing available options. A display unit displays a user interface including a focus area intersected by a first axis. In response to detecting activation of a button on the remote control device indicating a selection of a filter, the first sequence of cards is filtered according to the selected filter to produce a second sequence of cards. The second sequence is then displayed along the first axis, with one card being displayed within the focus area.

RELATED APPLICATIONS

[0001] This application is a continuation-in-part of U.S. patent application Ser. No. 10/097,174, filed Mar. 12, 2002, for “System and Method for Focused Navigation within an Interactive Television User Interface.” The present application is also related to and claims the benefit of U.S. Provisional Application No. 60/315,731, filed Aug. 29, 2001, entitled “System and Method for Visual Channel Surfing”, which is hereby incorporated by reference in its entirety. The present application is further related to and claims the benefit of U.S. Provisional Application No. 60/317,612, filed Sep. 6, 2001, entitled “System and Method for Visual Channel Surfing”, which is hereby incorporated by reference in its entirety. The present application is also related to and claims the benefit of U.S. Provisional Application No. 60/324,997, filed Sep. 26, 2001, entitled “System and Method for Visual Channel Surfing Using Center-Focused Navigation”, which is hereby incorporated by reference in its entirety.

BACKGROUND

[0002] 1. Field of the Invention

[0003] The present invention relates generally to the field of information systems. More specifically, the present invention relates to a system and method for enabling focused navigation using filtering and direct-tune buttons.

[0004] 2. Description of the Related Background Art

[0005] Recent advances in technology have vastly increased the number of available options within personal computers (PCs), interactive television (ITV) systems, personal digital assistant (PDAs), cellular telephones, and other information systems. For instance, current ITV systems offer hundreds of broadcast channels and a variety of interactive options, including e-mail, videoconferencing, instant messaging, online banking, online purchasing, and so forth.

[0006] Unfortunately, despite technological advances, user interfaces for these systems have remained largely unchanged, making navigation through all of the newly available options no easy task. For example, a user of a modern ITV system must scan through potentially hundreds of channels and other options, often by repeatedly pressing a button on a remote control. Such an outdated approach is far too slow and inconvenient to facilitate effective operation of a modern ITV system.

[0007] Similar problems exist with PC interfaces. The graphical user interface (GUI) of a modern PC looks remarkably similar to the first GUI developed twenty years ago. Small icons representing user options are arranged in rows and columns on a graphical representation of a desktop. Many of the icons are identical, requiring the addition of text labels as a distinguishing feature. Typically, a user must individually examine each icon and read each label—a time-consuming process that does not lend itself to effective navigation of the numerous options available in a modern PC.

[0008] Accordingly, it would be an advancement in the art to provide a user interface that allows for rapid and efficient navigation of a plurality of options without the drawbacks of conventional approaches. In particular, it would be an advancement in the art to provide an interface in which a user need not repeatedly press a button to display each available option, as is often the case with conventional TV or ITV interfaces. Likewise, it would be an advancement in the art to provide an interface in which a user need not scan through an arrangement of multiple icons, as is the case in many conventional PC interfaces.

BRIEF DESCRIPTION OF THE DRAWINGS

[0009] Non-exhaustive embodiments of the invention are described with reference to the figures, in which:

[0010]FIG. 1 is a block diagram of an ITV system;

[0011]FIG. 2. is an illustration of a plurality of cards;

[0012] FIGS. 3-10 are illustrations of various techniques for enabling focused navigation of a plurality of options within a user interface;

[0013]FIG. 11 is a timing diagram for displaying a sequence of cards;

[0014]FIG. 12 is an illustration of a technique for filtering sequences of cards;

[0015]FIG. 13 is an illustration of a sequence of cards representing filters within a user interface;

[0016]FIG. 14 is an illustration of a technique for associating direct-tune buttons with filters;

[0017]FIG. 15 is an illustration of a technique for associating direct-tune buttons with channel groups;

[0018]FIG. 16 is an illustration of a remote control including direct-tune buttons;

[0019]FIG. 17 is a schematic block diagram of a set-top box (STB);

[0020]FIG. 18 a flowchart of a method for enabling focused navigation of a plurality of options within a user interface; and

[0021]FIG. 19 is a flowchart of a method for enabling focused navigation using filtering and direct-tune buttons.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0022] Reference throughout this specification to “one embodiment” or “an embodiment” means that a particular described feature, structure, or characteristic is included in at least one embodiment of the present invention. Thus, appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment.

[0023] Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided, such as examples of programming, software modules, user selections, network transactions, database queries, database structures, etc., to provide a thorough understanding of embodiments of the invention. One skilled in the relevant art will recognize, however, that the invention can be practiced without one or more of the specific details, or with other methods, components, materials, etc. In other instances, well-known structures, materials, or operations are not shown or described in detail to avoid obscuring aspects of the invention.

[0024] While the following description makes particular reference to ITV systems, it should be recognized that the present invention may be used in conjunction with any type of information system in which selectable options may be displayed on a display screen. Examples of such information systems include, but are not limited to, ITV systems, personal computers, and mobile computing devices, such as PDAs, webpads, cellular telephones, and the like.

[0025] Referring now to FIG. 1, there is shown a block diagram of an ITV system 100 according to an embodiment of the invention. In one configuration, the ITV system 100 includes a television (TV) 102 or other display device having a display screen 104, a set-top box (STB) 106, and a remote control 108.

[0026] The STB 106 serves as a gateway between the TV 102 and a broadband communication network (not shown), such as a cable television network or a direct broadcast satellite (DBS) network. One commercially-available example of an STB 106 is the Motorola DCT5000® interactive set-top terminal.

[0027] The STB 106 receives encoded television signals and other data from the broadband network and processes the same for display on the display screen 104. The STB 106 may also include hardware and software for presenting a graphical user interface (GUI) 110 on the display screen 104 for operating the various functions and services of the STB 106.

[0028] In alternative embodiments, the STB 106 may be integrated into the TV 102, a mobile computing device, or the like. In still other embodiments, the term “STB” may broadly encompass a personal computer (PC) that performs STB-like functions. In such an embodiment, a PC may be used to process TV signals and other data received from the broadband network. The PC may operate in the context of a home network to provide display signals to a variety of devices, including one or more television sets, computer monitors, personal digital assistants (PDAs), cellular phones, and the like. A variety of home networking systems and protocols may be used, such as Ethernet, 802.11b, Bluetooth, etc.

[0029] The remote control 108 is provided for convenient remote operation of the STB 106 and the TV 102. The remote control 108 may include a wireless transmitter 112 for transmitting control signals to a wireless receiver 114 within the STB 106 using radio frequency (RF) or infrared (IR) techniques.

[0030] In addition, the remote control 108 may include a number of buttons or other similar controls. For instance, the remote control 108 may include a “Up” button 116, a “Down” button 118, a “Left” button 120, a “Right” button 122, and a “Select” button 124. Of course, a variety of other buttons or controls may be provided within the scope of the invention. In alternative implementations, the remote control 108 may be embodied as a keyboard, mouse, or other suitable input device.

[0031] As noted, an ITV system 100 typically provides access to a plurality of selectable options, such as channels, programs, applications, digital media files, etc. For instance, an ITV system 100 may provide access to literally hundreds of broadcast TV channels, pay-per-view (PPV) channels, music channels, and the like. Additionally, an ITV system 100 may provide access to a number of interactive channels or applications, including web browsers, e-mail programs, chat clients, personal video recorder (PVR) applications, contact directories, and the like. Furthermore, an ITV system 100 may store or provide access to stored PVR recordings, digital photographs, audio (MP3) files, or other forms of digital media.

[0032] As shown in FIG. 2, each selectable option within the ITV system 100 may be associated with a card 200. A card 200 is an object or other suitable data structure that provides information about and/or access to an available option within an ITV system 100. A card 200 may be a container of all of the attributes, actions, and/or states needed to facilitate interaction with the option represented thereby. Cards 200 may be stored in any suitable format within a memory or disk drive of the ITV system 100.

[0033] Each card 200 may include a graphical representation 202 for display in the GUI 110, as described in detail below. The graphical representation 202 may include various types or combinations of artwork, digital photography, captured video frames, animations, or the like.

[0034] As depicted in FIG. 2, cards 200 a-c may be used to represent television programs or channels. As used herein, the term “television program” may refer to the channel upon which a program is broadcast. Hence, the phrase “tuning to a television program” means tuning to the appropriate channel to receive the television program. Conversely, the term “channel” may refer to a television program being broadcast on a particular channel. Thus, references to a “genre” of a channel may relate to the genre of a television program being broadcast on the channel.

[0035] The television programs may be ongoing (live), upcoming, or previously-recorded. Furthermore, the television programs may be distributed using traditional broadcast methods or by newer techniques, such as Video-on-Demand (VoD).

[0036] In addition to a graphical representation 202, such cards 200 may include, for instance, a channel number 204, a channel name or identifier 206, a starting time 208, a running time 210, and a text description 212. Of course, cards 200 representing other types of options may include additional or different types of information, such as audio/video clips, file or path names, network addresses (URLs), etc.

[0037] The graphical representations 202 associated with cards 200 may have different levels of specificity or granularity. For instance, a graphical representation 202 a may correspond generally to a television series, e.g., “3^(rd) Rock from the Sun”, while another graphical representation 202 b may correspond to a television station or network, e.g., “CBS”. In other embodiments, a graphical representation 202 may correspond to a specific episode of a television series (e.g., a series premier), or even a product (purchase opportunity) associated with the television program. In still other embodiments, a generic graphical representation 202 may be provided, which may be overlaid by the channel number 204, text description 212, or other information, where a more specific card 200 is not available.

[0038] Cards 200 may be generated locally within an ITV system 100 or may be received via the broadband network using HTTP (hypertext transfer protocol), FTP (file transfer protocol), ATVEF (advanced television enhancement forum) triggers or other well-known protocols or techniques. In one embodiment, a card 200 may be received with data encoded in the vertical blanking interval (VBI) of a television signal. Additionally, information associated with cards 200 (e.g., channel number 204, starting time 208, running time 210) may be dynamically updated with information received in ATVEF triggers.

[0039] Referring to FIG. 3, a plurality of cards 200 may be linked or grouped together in a package or sequence 300. The sequence 300 may be circular (as depicted), linear, or configured in other ways. The sequence 300 may be linked in numerical order by channel number 204, in alphabetical order by the text description 212, or in other preset or user-defined ways. For instance, the sequence 300 may be determined based on one or a combination of other inputs, such as user profile information, user preferences, external events or data feeds (e.g., telephone rings, PVR notifications, alerts for external programming sources).

[0040] In the illustrated embodiment, one card 200 a in the sequence 300 is active or in “focus”. As shown, the active card 200 a may be displayed within a focus area 302 of a GUI 110 displayed on the TV 102. For brevity, the phrase “displaying a card” refers herein to displaying a graphical representation 202 associated with the card 200. Other information associated with the card, e.g., the channel number 204 or text description 212, may or may not be displayed.

[0041] A focus area 302 is a single location of the GUI 110 at which the cards 200 are successively displayed (displayed one at a time in sequence). The focus area 302 may be located at a central or visually dominant location of the GUI 110, although the invention is not limited in this respect. As used herein, the term “focused navigation” refers to a technique of displaying a sequence 300 of cards 200 within a focus area 302.

[0042] In response to a single user action, the cards 200 in a sequence 300 are successively displayed within the focus area 302. Where the sequence 300 is circular, the successive display of cards 200 may continue indefinitely until halted by the user by a subsequent action, as described more fully below.

[0043] The single user action to initiate navigation may be pressing (or pressing and holding down) a button on the remote control 108. For example, the user may press the “Up” button 116 to initiate the successive display in a first direction within the sequence 300 (indicated by line 304), and press the “Down” button 118 to initiate navigation in the opposite direction (indicated by line 306). Alternatively, the user may speak a command into a microphone (either within the STB 106 or remote control 108) to initiate navigation. Of course, the user may initiate navigation in a variety of other ways within the scope of the invention.

[0044] In one embodiment, the sequence 300 of cards 200 is successively displayed at a rate selected by the user. For instance, initially pressing the “Up” button 116 may cause the sequence 300 to be displayed at a rate of two cards 200 per second. As the user continues to hold the “Up” button 116, the rate may increase gradually or in steps to any practical rate within the limit of a typical user's ability to recognize individual cards 200 when they are displayed. Many users are able to recognize individual cards 200 at a rate of seven or more cards 200 per second (420 per minute), facilitating rapid navigation of available options.

[0045] The cards 200, when displayed within the focus area 302, may be sufficiently large to permit user recognition from a comfortable viewing distance for the particular display screen 104. Thus, unlike PC icons, which typically occupy as little as {fraction (1/200)} of the display area of the display screen 104, the displayed cards 200 (and the card 200 in the focus area 302 in particular) may occupy between {fraction (1/10)} and ¼ of the total display area.

[0046] When the user sees a card 200 being displayed of a channel or option that she desires to select or view, the user may take some additional action and the successive display of cards 200 is halted. For example, where navigation was initiated by pressing and holding down the “Up” button 116, the user may release the “Up” button 116 to discontinue navigation. In an alternative embodiment, where the successive display was initiated simply by pressing a button, the user may press the same or a different button to halt the successive display. Of course, the user may discontinue navigation in a variety of other ways within the scope of the invention.

[0047] If the user's reaction time is fast enough, the card 200 representing the desired channel remains displayed in the focus area 302 once navigation is discontinued. However, the user's reaction time may not be fast enough and one or more cards 200 may be subsequently displayed. In such a case, the user may manually backtrack to the desired card 200 by repeatedly activating a suitable control on the remote control 108. For example, briefly pressing the “Up” or “Down” buttons 116, 118 may result in the previous or next card 200, respectively, being displayed. Alternatively, as described in greater detail below, the ITV system 100 may attempt to determine the delay between the user recognizing the desired card 200 and taking the subsequent action and compensate for that delay by reverting to a previously-displayed card 200.

[0048] The user may select the channel or option associated with the displayed card 200 by taking a selection action. For instance, the user may press the “Select” button 124 on the remote control 108. Alternatively, the selection action may simply be waiting a set amount of time without activating any controls on the remote control 108.

[0049] The effect of activating the card 200 will vary dramatically depending on the type of card 200. For instance, in the case of a card 200 representing a live television program, the GUI 110 may be replaced by a full-size version of the program. Alternatively, activating a card 200 corresponding to a purchase opportunity may result in the display of a web browser directed to a particular website.

[0050] As shown in FIG. 4, one or more previous and next cards 200 within the sequence 300 may be displayed along an axis (not shown) of the GUI 110 to provide the user with a more complete navigational context within the sequence 300. In one embodiment, the axis is an imaginary line that extends across the GUI 110 in a particular direction and intersects the focus area 302. For example, at least a subset of the sequence 300 of cards 200 may be displayed along a vertical axis, with the active card 200 a being displayed in the focus area 302. In alternative embodiments, the cards 200 may be displayed along horizontal or diagonal axes, or in other suitable ways.

[0051] Typically, one or more cards 200 in a sequence 300 are not displayed. These off-screen or hidden cards may be dynamically changed, replaced, or updated during navigation, e.g., a card 200 representing an advertisement may change from one sponsor to another.

[0052] When a user activates one of the navigation buttons of the remote control 108 (e.g., the “Up” or “Down” buttons 116, 118), the displayed cards 200 in the sequence 300 may be scrolled (e.g., shifted or cycled) downward or upward, respectively, with a new card (e.g., card 200 c or 202 f) entering the focus area 302. Alternatively, the “Left” or “Right” button 120, 122 may be used for the same purpose.

[0053] As depicted, the card 200 a in the focus area 302 may be visually emphasized in various ways. For example, the card 200 a may be enlarged relative to the other displayed cards 200. Alternatively, the card 200 a may be animated, marked, illuminated, highlighted, or otherwise set apart from the other cards 200.

[0054] In certain embodiments, if the user allows a card 200 representing a live television program to remain in the focus area 302 for a certain amount of time (e.g., 2 seconds), the card 200 a may be overlaid by a video window 402 showing the live television program. Furthermore, if the user continues to linger on the card 200 a (or if the user presses the “Select” button 124), the video window 402 may be enlarged 402 to fill the entire display screen 104. Other types of cards 200 may exhibit different types of behaviors when the card 200 remains in the focus area 302 for an established period of time.

[0055] Where the cards 200 represent live television programs, a card 200 corresponding to the currently-tuned channel (at the current date and time) may be selected by default for display in the focus area 302 each time the GUI 110 is shown. This may occur, for instance, when the user is watching TV and presses a button (such as the “Select” button 124) in order to display the GUI 110. Additionally, an indication of the currently-displayed card 200 in the focus area 302 may be stored in non-volatile memory or otherwise maintained such that if a reset condition occurs (e.g., the STB 106 is rebooted or reset after a power loss, etc.) the last-displayed card 200 may be restored to the focus area 302.

[0056] Referring to FIG. 5, cards 200 may include one or more alternative graphical representations 502, which may be displayed when the card 200 enters the focus area 302. As depicted, cards 200 c-f displayed outside of the focus area 302 are shown using a first graphical representation 202 c-f. However, when the card 200 a enters the focus area 302, the alternative graphical representation 502 is shown. Providing an alternative graphical representation 502 allows a designer to provide a more detailed or higher-resolution image for display in the focus area 302, which may be enlarged relative to other graphical representations 202 outside of the focus area 302.

[0057] In certain implementations, various types of supplemental information, such as text descriptions 212, may be displayed next to the graphical representations 202, 502 in the GUI 110 to aid the user in identifying and knowing the status of the corresponding options. Sometimes a graphical representation 202 may simply be a picture or logo, which may not be familiar to every user. The addition of a text description 212 is helpful in such cases.

[0058] The text description 212 may be displayed above, below, or to the side of the graphical representation 202, 502. Moreover, the text may be of a suitably large size to be easily discernable by the user from a normal viewing distance. During navigation, the text descriptions 212 are shifted or cycled with the corresponding graphical representations 202, 502.

[0059] In the depicted embodiment, the text descriptions 212 identify a television programs or series, and are shown to the right of the corresponding graphical representations 202. Of course, many other types of text descriptions 212 may be provided, and different placements or orientations of the text descriptions 212 are contemplated.

[0060] As shown in FIG. 6, a text description 212 may be overlaid or superimposed over a graphical representation 202, 502. This may be accomplished using various techniques, such as configuring a displayed card 200 with multiple graphical “layers”, each layer representing either the graphical representation 202, 502, a text description 212, or other display element.

[0061] In the depicted embodiment, a card 200 may include or be associated with other types of supplemental information, such as a title 602 and/or synopsis 604, each of which may be likewise superimposed over the graphical representation 502. All such information displayed on or in connection with a card 200 is considered to be within the scope of the invention.

[0062] In other embodiments, a program completion indicator 606 may be displayed on or near a graphical representation 202, 502 of a card 200. The program completion indicator 606 graphically (and/or textually) indicates the amount of a live television program that has been missed and/or is left to watch. The indicator 606 may take various forms, such as the pie chart of FIG. 6 or the bar graph of FIG. 7. Additionally, the indicator 606 may include a numerical percentage indicative of the program's completion status. Such an indicator 606 may be valuable to a user in deciding whether to watch a program, particularly where a program is nearing completion.

[0063] The ITV system 100 may include a clock (not shown) that maintains an indication of the current time. Based on the starting time 208 associated with a card 200, the ITV system 100 may calculate how much of the program has been missed and generate an appropriate graph and/or text message. For instance, as shown in FIG. 6, if the current time is 7:40PM, a pie chart may indicate that 67% of “3^(rd) Rock from the Sun” has been missed. In the depicted embodiment, the program completion indicator 606 may be superimposed over the graphical representation 502 as described above.

[0064] Referring to FIG. 7, a displayed card 200 may be accompanied by an status indicator 702 that provides status information concerning the represented option. For instance, status indicator 702 may relate to the current status (i.e. position, standing, state of affairs, condition, situation) of people, things, or events within an ongoing (live) television program.

[0065] For example, during a sporting event, such as a football or baseball game, the status indicator 702 a may display the score, field position, down, inning, strike count, clock, etc. In other embodiments, the status indicator 702 may indicate a person being interviewed on a talk show, the current prize level or question in a suitable game show (e.g., “Who Wants to be a Millionaire®”), or a description of an item being currently offered on a shopping channel (e.g., QVC®).

[0066] In other embodiments, the status indicator 702 may relate generally to the subject matter of a represented television program and not to any event being currently depicted. For instance, in the case of a card 200 representing CNN/fn®, a status indicator 702 b may be embodied as a stock ticker. Alternatively, a status indicator 702 c could include a news headline. Similarly, a weather forecast could be shown in connection with a card 200 representing The Weather Channel®.

[0067] The status indicator 702 may be generated from information stored within the card 200. For instance, where a sporting event is being tape delayed, score information may be stored within a corresponding card 200, which may then be received by the ITV system 100. Alternatively, where the ITV system 100 already includes a card 200 representing the sporting event, score information within the card 200 may be updated using various techniques, such as ATVEF triggers. In still other embodiments, the ITV system 100 may not store such information within a card 200, but may include a link, such as a URL, to a website from which the information may be retrieved on demand using HTTP or other suitable protocols.

[0068] In one configuration, a card 200 may represent a television program recorded by a PVR application with the ITV system 100. The card 200 may include a file or path name (not shown) to a media file stored within a hard disk drive or the like of the ITV system 100. In such an embodiment, the status indicator 702 c may indicate when the program was recorded, whether the program has been watched, and/or how much of the program is left to watch.

[0069] Of course, a variety of other status indicators 702 may be provided for different types of cards 200 indicating the status of functions, operations, or tasks associated with a represented option. All such status indicators 702 used in connection with cards 200 are considered to be within the scope of the invention.

[0070] All of the above-described supplemental information that may be displayed with cards 200, e.g., text descriptions 212, titles 602, synopses 604, program completion indicators 606, status indicators 702, and the like, may be fully user configurable, such that a user may decide whether and how much of such information may be displayed. Moreover, the makeup and organization of displayed sequences 300 of cards may be configured by a user in any suitable manner.

[0071] Referring to FIG. 8, multiple sequences 300 a-b including different types of cards 200 may be displayed simultaneously. For instance, one or more cards 200 from a sequence 300 a representing television programs may be displayed as described in reference to FIG. 4. In addition, one or more cards 200 from a sequence 300 b representing interactive channels, applications, or digital media, may also be displayed.

[0072] As illustrated, the second sequence 300 b may be displayed horizontally, perpendicular to the first sequence 300 a, such that the sequences 300 a-b intersect at (and define) the focus area 302. Any number of sequences 300 may be displayed on the GUI 110 simultaneously. Of course, the selection of vertical and horizontal for the sequences 300 a-b is merely exemplary and not required.

[0073] In the depicted embodiment, the “Up” and “Down” buttons 116, 118 may be used to shift or cycle the vertically-displayed sequence 300 a within the GUI 110 in order to bring one of the corresponding cards 200 a-e into the focus area 302. Likewise, the “Left” and “Right” buttons 120, 122 may be used to shift or cycle the horizontally-displayed sequence 300 b to bring one of the corresponding cards 200 g-k into the focus area 302.

[0074] In one implementation, bringing a card 200 from one sequence 300 into the focus area 302 will determine or change which other sequence 300 is displayed. For example, bringing the card 200 h (TV shape) from the horizontal sequence 300 b into focus may result in the vertical sequence 300 a (television programs) being displayed. Alternatively, bringing the card 200 g (envelope shape) into focus may result in a vertical sequence 300 (not shown) corresponding to e-mail messages or contacts. Likewise, bringing the card 200 i (videophone shape) into focus may result in a vertical sequence 300 of a videoconferencing buddy list, while the card 200 j (VCR shape) may display a vertical sequence 300 of television programs recorded by a PVR. In alternative embodiments, a selection from a vertical sequence 300 may affect which horizontal sequence 300 is displayed.

[0075] Referring to FIG. 9, a number of context-sensitive areas 900 may be provided within the GUI 110. As depicted, the context-sensitive areas 900 may be quadrants of the GUI 110 formed by the intersection of two displayed sequences 300 a-b. Alternatively, the context-sensitive areas 900 may be hemispheres formed by a single sequence 300. However, any number of context-sensitive areas 900 may be provided within the scope of the invention. Unlike the embodiment depicted in FIG. 5, the context-sensitive areas 900 may be in fixed locations outside of the focus area 302 or the area used by the displayed sequences 300 a-b.

[0076] In one embodiment, a context-sensitive area 900 a in a lower-right quadrant of the GUI 100 may display supplemental information (e.g., channel numbers 204, channel identifiers 206, starting times 208, running times 210, text descriptions 212, titles 602, synopses 604, program completion indicators 606, status indicators 702, etc.) related to the card 200 in the focus area 302. The supplemental information may be obtained from the card 200, itself, or retrieved from a network using HTTP, ATVEF triggers, or other suitable techniques.

[0077] Additionally, a context-sensitive area 900 b in an upper-right quadrant may be used for displaying advertisements related to the card 200 in the focus area 302. For example, in an episode of “3^(rd) Rock from the Sun” featuring Dick Solomon driving a new BMW®, a suitable graphical image, video clip, flash animation, or the like, may be displayed. The advertisement may be displayed in response to receipt of an ATVEF trigger by the ITV system 100, although other mechanisms may be used within the scope of the invention.

[0078] A context-sensitive area 900 c in an upper-left quadrant may be used for branding purposes. For instance, as shown in FIG. 9, the context-sensitive area 900 c may show a logo for a provider (e.g., cable or satellite) of the television programs represented by the sequence 300 a.

[0079] Finally, a context-sensitive area 900 d in a lower-left quadrant may be used to display system notes and instructional text. For example, where the user is navigating a sequence 300 a of cards 200 corresponding to television programs, instructional text may be provided that prompts the user to select a television program. Other uses may include e-mail, videophone, or instant messaging notifications, reminders, warnings, or the like.

[0080] The relative sizes of the context-sensitive areas 900 may vary depending, for instance, on the location of the intersection (focus area 302) of the displayed sequences 300 a-b. If the intersection is near the center of the GUI 110, the context-sensitive areas 900 may be equal in size; otherwise, the relative sizes of the context-sensitive areas 900 may vary.

[0081] In alternative embodiments, one or more areas of the GUI 110 may display user-specific or user-targeted information, i.e. customized information for a specific user. The information may be targeted based on a user profile stored within or accessible to the ITV system 100. For instance, the ITV system 100 may be configured to display the BMW advertisement of FIG. 9 if the user profile indicates that a user is a male, age 40 or above, with an income exceeding $150,000 per year. Of course, a variety of other user-specific or user-targeted information may be provided within the scope of the invention.

[0082] In certain implementations, a loop of sequentially-displayed supplemental information items may be displayed within one or more of the context-sensitive areas 900 of the GUI 110. For instance, a context-sensitive area 900 may display a sequence of advertisements, news headlines, weather reports, or other information. The individual items may be configured to be displayed at or for certain time periods, as configured by the user or a content producer.

[0083] Multiple supplemental information loops may be displayed simultaneously in different context-sensitive areas 900. In such an embodiment, the loops may be synchronized in various ways. For instance, multiple loops may be synchronized in order to not simultaneously display an identical or similar item of supplemental information in two or more context-sensitive areas 900. Likewise, multiple loops may be synchronized such that items of supplemental information may rotate through different context-sensitive areas 900 in a carousel fashion. In this manner, advertising need not always be displayed in the upper-right area 900 of the GUI 110.

[0084] As illustrated in FIG. 10, different types of cards 200 may be included within a single sequence 300. For example, cards 200 c-f may correspond to television programs, while card 200 m represents a purchase opportunity. In the depicted card 200 m includes a graphical representation 202 m (advertisement), as well as a link or network address 1002, such as a uniform resource locator (URL), to a commercial website.

[0085] If the card 200 m remains in the focus area 302 for a sufficiently long period, or if the user presses the “Select” button 124, the displayed sequence 300 may be replaced by a web browser 1004, which is automatically directed to the network address 1002 associated with the card 200 m. Thereafter, the user may elect to proceed with the purchase opportunity or return to the displayed sequence 300 of cards 200.

[0086] Referring to FIG. 11, there are shown three timing diagrams 1102, 1104, 1106 illustrating the successive display of cards 200 according to embodiments of the invention. Each vertical line within the timing diagrams represents a moment in time at which a particular card 200 is displayed. In diagram 1102, after a single user action, cards 200 are successively displayed at moments 1106, 1108, 1110, and so on. When the user takes some additional action to discontinue navigation, the successive display of cards 200 may be halted at moment 1112.

[0087] In certain instances, the user's delayed response may be automatically compensated for by reverting to a previously displayed card 200 once the user halts the successive display. For example, if a card 200 representing a desired channel is displayed within the GUI 110 at moment 1112, but the user takes the additional action to discontinue navigation at moment 1114, the ITV system 100 may be configured to automatically revert to the card 200 displayed a suitable amount of time 1116 before the action was taken. The amount of time may be preset or user-defined, or may be calculated based on historical user reaction times.

[0088] The rate at which the cards 200 are successively displayed may be increased in response to the user taking a suitable action. For example, as shown in timing diagram 1104, the rate at which cards 200 are successively displayed may gradually increase from a minimum rate 1118 to a maximum rate 1120 (preferably at or below the user's image recognition limit). Alternatively, as shown in timing diagram 1106, the display rate may increase from a minimum rate 1122 to an intermediate rate 1124 to a maximum rate 1126 according to a stepwise function. The user action to increase the display rate may take many forms, such as holding down a button on the remote control 108 for a set amount of time. In such case, the rate may be increased based on how long the button is held down. Alternatively, the user may increase the display rate by repeatedly pressing a button on the remote control 108, in which case the rate may be increased each time the button is pressed.

[0089]FIG. 12 illustrates a technique for filtering sequences 300 of cards 200 in order to generate shorter sequences 300 that can be more easily navigated. In many instances, a sequence 300 may include hundreds of cards 200, e.g., a sequence 300 representing all of the television programs being currently broadcast. Accordingly, it would be an advancement to allow a user to filter and thereby reduce a large sequence 300 to a manageable size that can be quickly searched.

[0090] As depicted, each card 200 may include one or more tags 1200. A tag 1200 may indicate a genre, type, function, priority, or other characteristic of a card 200 or a represented option. A tag 1200 may be embodied as an XML tag, an object attribute, or other suitable indicator known in the art. As exemplified in FIG. 12, a tag 1200 may indicate a genre of a television program represented by a card 200 a (e.g., a sitcom).

[0091] One or more filters 1202 may be provided for filtering sequences 300 of cards 200 based on the tags 1200. A filter 1202 may be embodied as an object, a module of code, a data structure, a circuit, or other suitable mechanism for performing or assisting with the filtering function as described herein. In one embodiment, a filter 1202 may include criteria, such as one or more search terms (e.g., keywords), search attributes, logical expressions, or the like, that may be compared with the tag(s) 1200 of each card 200 in a sequence 300. If a tag 1200 is compatible with the criteria, the corresponding card 200 may be retained or copied to a new sequence 300; otherwise, the card 200 may be removed or not copied.

[0092] Filters 1202 may be predefined for certain popular categories, e.g., sports, movies, or news. Such predefined filters may be initially provided with the ITV system 100 or may be downloaded from a remote server via a broadband network.

[0093] Alternatively, filters 1202 may be explicitly defined by a user, e.g., mySports, John's Favorite Movie Channels, etc. Such filters 1202 may be created based on a viewer's answers to a series of questions relating to the viewer's tastes or needs, e.g. “Do you like SciFi?” Additionally, filters 1202 may be implicitly defined based on historical viewing habits or demographics. For instance, a “movies” filter 1202 may be automatically generated where a user typically watches movies. Such user-defined filters 1202 may be created on a per-viewer or per-household basis. To enable per-viewer filtering, viewer's may log into the ITV system 100 to indicate their presence using various standard techniques.

[0094] However the filters 1202 are received or generated, one or more filters 1202 may be stored within a memory or storage device of the ITV system 100, such as a random access memory (RAM) or hard disk drive.

[0095] As an example, a filter 1202 a may only select cards 200 from a sequence 300 a that have a “sports” tag 1200. In one embodiment, the filter 1202 a produces a new sequence 300 c that includes the card 200 e satisfying the filter 1202 a (e.g., Monday Night Football). Likewise, a filter 1202 b may only select cards 200 that have a “sitcom” tag 1200. As a result, a new sequence 300 d may be created that includes cards 200 a and 200 c (e.g., 3^(rd) Rock from the Sun and M*A*S*H). In other embodiments, a new sequence 300 is not created, but the original sequence 300 a is modified by application of the filter 1202.

[0096] As illustrated in FIG. 13, cards 200 may be used to represent filters 1202. For instance, a card 200 p may represent a “sports” filter 1202, while a card 200 q may represent a “sitcom” filter 1202. The cards 200 representing filters 1202 may be organized into a sequence 300 e, which may be navigated in the same manner as the other sequences 300 previously discussed. For instance, the cards 200 corresponding to filters 1202 (“filter cards”) may be displayed along a horizontal axis of the GUI 110. Accordingly, the sequence 300 e may be cycled or shifted left or right to bring a new filter card 200 into the focus area 302.

[0097] The effect of bringing a filter card 200 into focus may be to apply a corresponding filter 1202 to another sequence 300 of cards, such as the sequence 300 a representing television programs. For example, selecting the “sitcom” filter card 200 may have the effect of applying the “sitcom” filter 1202 b to the sequence 300 a, resulting in a new sequence 300 d that only includes the cards 200 a and 200 c that are compatible with the filter 1202 b.

[0098] The new, filtered sequence 300 d of cards 200 may then be displayed along the vertical axis of the GUI 110 and may be navigated as previously described. Thus, by selecting the “sitcom” filter card 200 along the horizontal axis, the user is presented with a new sequence 300 d along the vertical axis corresponding only to sitcoms, rather than the entire sequence 300 a of available television programs. Of course, the assignment of vertical and horizontal axes in this example is arbitrary, as is the number and configuration of sequences 300.

[0099] In one embodiment, a text indication 1300 of the currently-applied filter 1202 may be displayed in the GUI 110, e.g. “Sitcoms”. The text indication 1300 may be taken from a text description 212, tag 1200 or the like, associated with the card 200 being currently displayed in the focus area 302.

[0100] Referring to FIG. 14, one or more filters 1202 may be associated with direct-tune buttons 1400 on the remote control 108. In such an embodiment, rather than having to navigate through a sequence 300 of filter cards 200 to make a selection, a user may skip directly to the desired filter card 200 and apply the corresponding filter 1200 simply by pressing the appropriate direct-tune button 1400.

[0101] For example, the user may press a “Sitcoms” button 1400 a, which results in the filter 1202 b being applied to the sequence 300 a of FIG. 13. In one configuration, a first card 200 a in the filtered sequence 300 d is automatically displayed within the focus area 302. Alternatively, the corresponding filter card 200 q is displayed (as depicted in FIG. 13), after which a user may navigate to a desired card 200 within the sequence 300 d. Such navigation may be accomplished using directional buttons, such as the “Up” and “Down” buttons 116, 118.

[0102] In one embodiment, a user may repeatedly press a direct-tune button 1400, which causes the next card 200 in the filtered sequence 300 to successively enter the focus area 302. Accordingly, a user need not remove his or her finger from the direct tune button 1400 to switch to a separate navigation button, such as the “Up” or “Down” buttons 116, 118, in order to “surf” from card 200 to card 200.

[0103] In an alternative configuration, after a user presses a direct-tune button 1400, the first card 200 in the filtered sequence 300 will be displayed for a period of time, e.g., 1-3 seconds. Thereafter, without user interaction, the next card 200 in the filtered sequence 300 will be displayed for the same period, and so on, until the user presses a “Select” button 124, or the like, indicating a selection of the card 200.

[0104] As shown in FIG. 15, a variety of direct-tune buttons 1400 may be provided for representing different types of filters 1200, all of which may be included within a single remote control 108. For instance, a group 1502 of direct-tune buttons 1400 may be provided for genre-based filters 1200, such as movies, news, sports, sitcoms, dramas, shopping, musical programs, children's programs, or the like. Such filters 1200 may be used with television programs, channels, or other options having distinct genres.

[0105] Similarly, a group 1504 of direct-tune buttons 1400 may be included for filters 1200 relating to a network affiliation. In an embodiment in which cards 200 represent television channels or programs, a card 200 may indicate a network affiliation, e.g., HBO®, Encore®, CNN®, Time-Warner®, etc., and a filter 1200 may be provided that filters a sequence 300 based on such an affiliation. As used herein, the term “network” is intended to broadly encompass sponsorship, ownership, etc., of a particular channel or option.

[0106] In many cases, multiple channels are associated with a particular network. For instance, in the case of Encore®, several different channels may be included within a cable lineup, e.g. Mystery, Action, Westerns, etc. Accordingly, when a user presses an Encore® direct-tune button 1400, he or she will be presented with a filtered sequence 300 of channels offered by Encore®.

[0107] As previously explained, cards 200 may be used to represent stored media programs, such as audio programs (MP3s), video programs, and digital (still) photographs. Likewise, filters 1200 may be provided for filtering a sequence 300 of cards 200 for those representing particular types of media programs. As depicted in FIG. 15, a group 1506 of direct-tune buttons 1400 may correspond to MP3s, photos, or other media types. For instance, when a user activates the “MP3s” button 1400, he or she may be presented with a filtered sequence 300 corresponding to stored MP3 files.

[0108] An ITV system 100 may also include a number of interactive applications, such as e-mail, instant messaging, web access, personal video recording (PVR), etc. Such applications may be associated with cards 200, which may be filtered using the techniques described above.

[0109] In one embodiment, a group 1508 of direct-tune buttons 1400 may be provided for initiating the filtering of cards 200 based on an application or application type. For instance, as depicted in FIG. 15, buttons 1400 may be provided for e-mail and web browser applications.

[0110] Of course, a wide variety of other options may be provided within the scope of the invention. Hence, the options depicted in FIG. 15 are offered as examples and are not meant to be all encompassing or restrictive.

[0111]FIG. 16 depicts an alternative embodiment of the invention in which direct-tune buttons 1400 may be associated with groups or sets 1600 of channels or options. In such an embodiment, filters 1200 are not required. Rather, a data structure within a memory of an ITV system 100 may associate particular direct-tune buttons 1400 with pre-determined or user-defined sets 1600 of channels or options. The sets 1600 may include channels or options related by genre, network affiliation, media type, application, or the like. In the case of user-defined sets 1600, channels may be grouped according to any user-defined criteria, e.g., My Favorite Channels.

[0112] In one configuration, when a user presses a direct-tune button 1400, such as the “Sitcoms” button 1400 a of FIG. 16, the ITV system 100 may tune to the first channel in the corresponding set 1600. Thereafter, each time the same button 1400 is pressed, the ITV system 100 may tune to the next channel in the set 1600.

[0113] In the case of options other than channels, the ITV system 100 may take whatever action is appropriate to activate the particular option, e.g., open a web browser, execute an email client, display a stored photograph, etc. In various embodiments, a set of channels may include “interactive” channels, which are broadly defined as applications or services available within an ITV system 100.

[0114]FIG. 17 is a schematic block diagram of an STB 106 according to an embodiment of the invention. The illustrated components may be logical or physical and may be implemented using any suitable combination of hardware, software, and/or firmware.

[0115] In one configuration, the STB 106 includes a network interface 1702 for communicating with a broadband network, such as a cable television network or a DBS (Direct Broadcast Satellite) network. The network interface 1702 may conform to the DOCSIS (Data Over Cable Service Interface Specification) or DAVIC (Digital Audio-Visual Council) cable modem standards. Additionally, the network interface 1702 may include standard circuitry for receiving MPEG (Moving Picture Experts Group) streams including multiplexed television programs and data from the broadband network.

[0116] One or more sequences 300 of cards 200 may be received by the interface 1702 from a server accessible via the broadband network or the Internet. Additionally, the network interface 1702 may be used to retrieve status indicators 702, such as sports scores, stock tickers, news headlines, and the like, which may be displayed on or near a card 200. Moreover, the network interface 1702 may be configured to receive one or more filters 1202. Such cards 200, indicators 702, and/or filters 1202 may be retrieved via HTTP, ATVEF triggers, or other mechanisms.

[0117] The STB 106 further includes a memory 1704, such as a random access memory (RAM) and/or read-only memory (ROM). The memory 1704 may store an operating system (OS) for the STB 106 (e.g., Windows CE® or Linux®), application program code, and various types of data. In one embodiment, the memory 1704 stores one or more sequences 300 of cards 200, as well as data for status indicators 702, filters 1200, and the like. In other embodiments, the sequences 300 may be stored within a mass storage device 1706, such as a hard disk drive, optical storage device, or the like. In certain configurations, the memory 1704 may be further adapted to store one or more filters 1202 for filtering sequences 300 of cards 200, as described in connection with FIG. 13.

[0118] An input interface 1708 may be provided for receiving commands from an input device, such as a remote control 108. In one embodiment, the input interface 1708 may include or be associated with the wireless receiver 114 described in connection with FIG. 1. The input interface 1708 may detect a single user action for initiating navigation, such as the user pressing the “Up” or “Down” buttons 116, 118 on the remote control 108.

[0119] The STB 106 may further include a display interface 1710 for generating a GUI 110 on an attached TV 102 or other display device. In addition, the display interface 1710 may be responsible for successively displaying cards 200 from one or more stored (and possibly filtered) sequences 300 in a focus area 302 of the GUI 110 in response to the single user action being detected by the input interface 1708. Likewise, the display interface 1710 may be responsible for halting the successive display in response to detection of a subsequent user action. Additionally, the display interface 1710 may be used to display various types of supplemental information on or in connection with cards 200, such as text descriptions 212, program completion indicators 606, status indicators 702, and the like. The display interface 1710 may be adapted to display supplemental information with the corresponding graphical representation 202, 502 using different graphical layers, which are combined to form the card 200 as displayed in the GUI 110.

[0120] A tuner 1712 may be included for demodulating and demultiplexing selected MPEG streams received by the STB 106 from the broadband network. The tuner 1712 may be used to tune to a particular television program in response to a user selection of a card 200, e.g., in response to the user pressing the “Select” button 124, when the user “lingers” on a card 200 in the focus area 302, or when a user activates a direct-tune button 1400.

[0121] A CPU 1714 controls the operation of the STB 106, including the other components described above, which may be in electrical communication with the CPU 1714 via a bus 1716. The CPU 1714 may be embodied as a microprocessor, a microcontroller, a digital signal processor (DSP) or other device known in the art. For instance, the CPU 1714 may be embodied as an Intel® x86 processor. The CPU 1714 may perform logical and arithmetic operations based on program code stored within the memory 1704 or the mass storage device 1706.

[0122] Of course, FIG. 17 illustrates only one possible configuration of an STB 106. Those skilled in the art will recognize that various other architectures and components may be provided within the scope of the invention. In addition, various standard components are not illustrated in order to avoid obscuring aspects of the invention.

[0123] Referring to FIG. 18, there is shown a flowchart of a method 1800 for enabling focused navigation of a plurality of options within a GUI 110. The method 1800 begins by storing 1802 a sequence 300 of cards 200 representing channels or other available options within an ITV system 100. Supplemental information not already included within a card 200 may also be obtained 1803, such as a status indicator 702, using HTTP, ATVEF triggers, or other techniques. The supplemental information may be pre-cached by the ITV system 100 prior to the cards 200 being displayed or may be retrieved just in time to be displayed with the corresponding cards 200.

[0124] In one configuration, the method 1800 waits 1804 for user input. When a single user action is detected 1806, as previously discussed, the cards 200 from the sequence 300 are successively displayed 1808 in a focus area 302 of the GUI 110. In addition, any supplemental information associated with the cards 200 may also be displayed within or outside of the focus area 302 (e.g., a context-sensitive area 900). This successive display continues until a subsequent user action is detected 1810, at which point the successive display is discontinued and a single card 200 corresponding to a selected option is displayed 1812 within the focus area 302.

[0125] Thereafter, depending on the particular type of card 200, various actions may be taken if the user actively selects the card 200 (e.g., presses the “Select” button 124 on the remote control 108) or waits beyond an established time period to either select the card 200, continue navigation, or take some other action. For example, a card 200 in the focus area 302 may be replaced by a video window 402 showing a live television program after a period of inaction (lingering) by the user.

[0126] Referring to FIG. 19, there is shown a flowchart of a method 1900 for enabling focused navigation of a plurality of options using filtering and direct-tune buttons. While the embodiment of FIG. 19 makes particular reference to the field of interactive television, those skilled in the art will recognize that a wide variety of other applications are possible within the scope of the invention.

[0127] The method 1900 begins by storing 1902 a sequence 300 of cards 200 representing television programs, channels, or other options. For instance, the sequence 300 may represent all of the television programs being currently broadcast. Alternatively, the sequence 300 may represent recorded television programs, or programs that are available on demand, e.g., video-on-demand (VoD).

[0128] Additionally, a sequence 300 is stored 1904 that represents one or more filters 1202, as described above in connection with FIGS. 12-13. The filter cards 200 may be displayed 1906 along a first (e.g., horizontal) axis of the GUI 110, with a single card 200 being displayed within the focus area 302. In one embodiment, the card 200 in the focus area 302 defines the currently-selected filter 1202. Thus, the system may receive user selection of a filter 1202 using the navigation techniques described above. Alternatively, as described in connection with FIG. 14, the system may detect 1908 activation of a direct-tune button 1400, which results a corresponding filter 1200 being selected.

[0129] The sequence 300 of cards 200 representing television programs is then filtered 1910 according to the selected filter 1202. For instance, cards 200 may be removed from the sequence 300 that do not satisfy the filtering criteria associated with the selected filter 1202. Alternatively, a new sequence 300 of cards 200 may be created (e.g., copied from a source sequence 300 to a destination sequence 300) that satisfies the filter 1202.

[0130] Thereafter, the filtered sequence 300 may be displayed along a second (e.g., vertical) axis of the GUI 110. A user selection of a card from the television sequence 300 may then be obtained 1914, after which the system may tune 1916 to the selected to television program.

[0131] In view of the foregoing, the present invention offers a number of advantages not available in conventional approaches. Cards representing available channels or options within an ITV system may be successively and rapidly displayed within a focus area. Because navigation is initiated by a single user action, the user need not repeatedly press a button to display each channel, as is often the case with conventional TV or ITV interfaces. This greatly increases navigation speed, reduces wear on the remote control, and reduces the likelihood of discomfort or injury to the user's hand.

[0132] Likewise, because the cards are all displayed within a single area of the user interface (i.e. the focus area), the cards may be displayed at a relatively high rate of speed, while still being within the user's image recognition threshold. Typically, the focused navigation technique of the claimed invention allows a user to more quickly and efficiently locate and select a desired option than conventional approaches where a large number of available options exist.

[0133] Furthermore, cards may be used to represent filters, which may be applied to large sequences of cards (e.g., sequences representing TV programs) to selectively reduce the sequence to a manageable size. For instance, a user may select a “sports” filter card, which results in only the cards representing sports programs being displayed. In certain configurations, a filter 1200 may be selectively applied when a user presses a direct-tune button 1400 on the remote control.

[0134] While specific embodiments and applications of the present invention have been illustrated and described, it is to be understood that the invention is not limited to the precise configuration and components disclosed herein. Various modifications, changes, and variations apparent to those skilled in the art may be made in the arrangement, operation, and details of the methods and systems of the present invention disclosed herein without departing from the spirit and scope of the invention. 

What is claimed is:
 1. A method for enabling navigation of a plurality of options within a user interface, the method comprising: storing a first sequence of cards, each card graphically representing an available option; storing a set of filters for filtering the first sequence of cards, at least one filter being associated with a button on a remote control device; displaying a user interface including a focus area intersected by a first axis; detecting activation of a button on the remote control device indicating a selection of a filter; filtering the first sequence of cards according to the selected filter to produce a second sequence of cards; and displaying at least a subset of the second sequence of cards along the first axis, one card being displayed within the focus area.
 2. The method of claim 1, further comprising: scrolling the second sequence of cards along the first axis in response to a single user action to progressively change the card within the focus area to a next card in the second sequence; and halting the scrolling of cards in response to a subsequent user action to show a selected card from the second sequence within the focus area.
 3. The method of claim 1, wherein at least a subset of the options represents television programs, and wherein the remote control device comprises at least one button associated with a filter for filtering the first sequence of cards according to a genre of a television program.
 4. The method of claim 3, wherein the genre is selected from the group consisting of movies, news, sports, sitcoms, dramas, shopping, musical programs, and children's programs.
 5. The method of claim 1, wherein at least a subset of the options represents channels, and wherein the remote control device comprises at least one button associated with a filter for filtering the first sequence of cards according to a network affiliation of a channel.
 6. The method of claim 1, wherein at least a subset of the options represent channels, the method further comprising: tuning to a channel represented by a card being displayed within the focus area.
 7. The method of claim 1, wherein at least a subset of the options represent stored media programs, and wherein the remote control device comprises at least one button associated with a filter for filtering the first sequence of cards according to a media type of a stored media program.
 8. The method of claim 1, wherein at least a subset of the options represents applications, and wherein the remote control device comprises at least one button associated with a filter for filtering the first sequence of cards according to a type of application.
 9. The method of claim 1, wherein the remote control device comprises a plurality of buttons corresponding to a plurality of filter types selected from the group consisting of genre, network affiliation, media type, and application.
 10. The method of claim 1, further comprising: in response to detecting a subsequent activation of the same button, displaying a next card from the first sequence within the focus area.
 11. The method of claim 1, further comprising: in response to user inaction for a period of time, displaying a next card from the first sequence within the focus area.
 12. The method of claim 1, further comprising: storing a third sequence of cards, each card graphically representing a filter, wherein the focus area is intersected by a second axis perpendicular to the first axis, and wherein receiving a user selection comprises displaying at least a subset of the third sequence of cards along the second axis, one card from the third sequence being displayed within the focus area, wherein the selected filter corresponds to the card within the focus area.
 13. The method of claim 12, further comprising: scrolling the third sequence of cards along the second axis in response to a single user action to progressively change the card within the focus area to a next card in the third sequence; and halting the scrolling of cards in response to a subsequent user action to show a selected card from the third sequence within the focus area.
 14. A method for enabling navigation of a plurality of channels within a user interface, the method comprising: providing a remote control device comprising a plurality of direct-tune buttons; associating each direct-tune button with a set of channels; in response to activation of a direct-tune button, tuning to a first channel within the associated set of channels.
 15. The method of claim 14, further comprising: in response to a subsequent activation of the same direct-tune button, tuning to a next channel within the associated set of channels.
 16. The method of claim 14, wherein at least one set of channels comprises channels relating to a particular genre.
 17. The method of claim 16, wherein the genre is selected from the group consisting of movies, news, sports, sitcoms, dramas, shopping, musical programs, and children's programs.
 18. The method of claim 14, wherein at least one set of channels is defined by a user.
 19. The method of claim 14, wherein at least one set of channels is affiliated with a particular network.
 20. The method of claim 14, wherein at least one set of channels comprises interactive channels.
 21. A system for enabling navigation of a plurality of options within a user interface, the system comprising: a memory for storing a first sequence of cards, each card graphically representing an available option; at last one filter for filtering the first sequence of cards to produce a second sequence of cards in response to activation of a button on a remote control device associated with the filter; and a display unit for displaying at least a subset of the second sequence of cards along the first axis, one card being displayed within the focus area.
 22. The system of claim 21, wherein the display unit is further adapted to scroll the second sequence of cards along the first axis in response to a single user action to progressively change the card within the focus area to a next card in the second sequence and to halt the scrolling of cards in response to a subsequent user action to show a selected card from the second sequence within the focus area.
 23. The system of claim 21, wherein at least a subset of the options represents television programs, and wherein the remote control device comprises at least one button associated with a filter for filtering the first sequence of cards according to a genre of a television program.
 24. The system of claim 23, wherein the genre is selected from the group consisting of movies, news, sports, sitcoms, dramas, shopping, musical programs, and children's programs.
 25. The system of claim 21, wherein at least a subset of the options represents channels, and wherein the remote control device comprises at least one button associated with a filter for filtering the first sequence of cards according to a network affiliation of a channel.
 26. The system of claim 21, wherein at least a subset of the options represent channels, the system further comprising: a tuner for tuning to a channel represented by a card being displayed within the focus area.
 27. The system of claim 21, wherein at least a subset of the options represents stored media programs, and wherein the selected filter filters the first sequence of cards according to a media type of a stored media program.
 28. The system of claim 21, wherein at least a subset of the options represents applications, and wherein the remote control device comprises at least one button associated with a filter for filtering the first sequence of cards according to a type of application.
 29. The system of claim 21, wherein the remote control device comprises a plurality of buttons corresponding to a plurality of filter types selected from the group consisting of genre, network affiliation, media type, and application.
 30. The system of claim 21, wherein the display unit is further adapted, in response to a subsequent activation of the same button, to display a next card from the first sequence within the focus area.
 31. The system of claim 21, wherein the display unit is further adapted, in response to user inaction for a period of time, to display a next card from the first sequence within the focus area.
 32. The system of claim 21, wherein the memory is further adapted to store a third sequence of cards, each card graphically representing a filter, wherein the focus area is intersected by a second axis perpendicular to the first axis, wherein the display unit is further adapted to display at least a subset of the third sequence of cards along the second axis, one card from the third sequence being displayed within the focus area, and wherein the selected filter corresponds to the card from the third sequence within the focus area.
 33. The system of claim 32, wherein the display unit is further adapted to scroll the third sequence of cards along the second axis in response to a single user action to progressively change the card within the focus area to a next card in the third sequence and to halt the scrolling of cards in response to a subsequent user action to show a selected card from the third sequence within the focus area.
 34. A system for enabling navigation of a plurality of channels within an interactive television system, the system comprising: a remote control device comprising a plurality of direct-tune buttons; a memory comprising a data structure for associating each direct-tune button with a set of channels; and a tuner for tuning to a first channel within a set of channels in response to activation of a direct-tune button.
 35. The system of claim 34, wherein the tuner is further adapted, in response to a subsequent activation of the same direct-tune button, to tune to a next channel within the associated set of channels.
 36. The system of claim 34, wherein at least one set of channels comprises channels relating to a particular genre.
 37. The system of claim 36, wherein the genre is selected from the group consisting of movies, news, sports, sitcoms, dramas, shopping, musical programs, and children's programs.
 38. The system of claim 34, wherein at least one set of channels is defined by a user.
 39. The system of claim 34, wherein at least one set of channels is affiliated with a particular network.
 40. The system of claim 34, wherein at least one set of channels comprises interactive channels.
 41. A method for enabling navigation of a plurality of channels within a user interface of an interactive television system, the method comprising: storing a first sequence of cards, each card graphically representing an available channel; storing a set of filters for filtering the first sequence of cards, at least one filter being associated with a button on a remote control device; displaying a user interface including a focus area intersected by a first axis; detecting activation of a button on the remote control device indicating a selection of a filter; filtering the first sequence of cards according to the selected filter to produce a second sequence of cards; displaying at least a subset of the second sequence of cards along the first axis, one card being displayed within the focus area; scrolling the second sequence of cards along the first axis in response to a single user action to progressively change the card within the focus area to a next card in the second sequence; halting the scrolling of cards in response to a subsequent user action to show a selected card from the second sequence within the focus area; and tuning to the channel represented by the selected card.
 42. A system for enabling navigation of a plurality of options within a user interface, the system comprising: means for storing a first sequence of cards, each card graphically representing an available option; means for storing a set of filters for filtering the first sequence of cards, at least one filter being associated with a button on a remote control device; means for displaying a user interface including a focus area intersected by a first axis; means for detecting activation of a button on the remote control device indicating a selection of a filter; means for filtering the first sequence of cards according to the selected filter to produce a second sequence of cards; and means for displaying at least a subset of the second sequence of cards along the fop first axis, one card being displayed within the focus area.
 43. A system for enabling navigation of a plurality of channels within a user interface, the system comprising: a remote control device comprising a plurality of direct-tune buttons; means for associating each direct-tune button with a set of channels; and means for tuning to a first channel within the associated set of channels in response to activation of a direct-tune button,.
 44. A computer program product comprising program code for performing a method for enabling navigation of a plurality of options within a user interface, the method comprising: storing a first sequence of cards, each card graphically representing an available option; storing a set of filters for filtering the first sequence of cards, at least one filter being associated with a button on a remote control device; displaying a user interface including a focus area intersected by a first axis; detecting activation of a button on the remote control device indicating a selection of a filter; filtering the first sequence of cards according to the selected filter to produce a second sequence of cards; and displaying at least a subset of the second sequence of cards along the first axis, one card being displayed within the focus area. 